package com.woniu.sharepark.leasesystem.tenant.dao;

import com.woniu.sharepark.leasesystem.tenant.pojo.Car;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 汽车信息访问层接口
 * @author xin
 * @date 2019/6/1 11:45
 */
public interface CarDAO {
    /**
    * 通过主键列删除汽车信息
    * @title deleteByPrimaryKey
    * @param carId 主键id
    * @return: int
    * @author xin
    * @date 2019/6/1 11:45
    */
    int deleteByPrimaryKey(Integer carId);

    /**
    * 插入车辆信息
    * @title insert
    * @param record 车辆信息
    * @return: int
    * @author xin
    * @date 2019/6/1 11:46
    */
    int insert(Car record);

    /**
    * 动态插入车辆信息
    * @title insertSelective
    * @param record 车辆信息
    * @return: int
    * @author xin
    * @date 2019/6/1 11:46
    */
    int insertSelective(Car record);

    /**
    * 通过主键查询车辆信息
    * @title selectByPrimaryKey
    * @param carId 主键id
    * @return: com.woniu.sharepark.pojo.Car
    * @author xin
    * @date 2019/6/1 11:47
    */
    Car selectByPrimaryKey(Integer carId);

    /**
    * 通过主键列动态修改车辆信息
    * @title updateByPrimaryKeySelective
    * @param record 车辆信息
    * @return: int
    * @author xin
    * @date 2019/6/1 11:48
    */
    int updateByPrimaryKeySelective(Car record);

    /**
    * 通过主键列修改车辆信息
    * @title updateByPrimaryKey
    * @param record 车辆信息
    * @return: int
    * @author xin
    * @date 2019/6/1 11:49
    */
    int updateByPrimaryKey(Car record);

    /**
    * 分页动态查询汽车信息
    * @title selectAllCarPage
    * @param currentPage 当前页
    * @param pageSize 当前页数据
    * @param car 汽车类
    * @return: java.util.List<com.woniu.sharepark.leasesystem.tenant.pojo.Car>
    * @author xin
    * @date 2019/6/4 16:50
    */
    List<Car> selectAllCarPage(@Param("currentPage") Integer currentPage,@Param("pageSize") Integer pageSize,@Param("car") Car car);

    /**
    * 查询当前用户车辆信息
    * @title selectCarById
    * @param getuId
    * @return com.woniu.sharepark.leasesystem.tenant.pojo.Car
    * @author DELL
    * @date 2019/6/6 11:27
    **/

    Car selectCarById(Integer getuId);


    /**
    * 通过车辆id集合查询车辆
    * @title selectByCarIds
    * @param carIds 车辆id
    * @return: java.util.List<com.woniu.sharepark.leasesystem.tenant.pojo.Car>
    * @author xin
    * @date 2019/6/6 11:05
    */
    List<Car> selectByCarIds(@Param("currentPage") Integer currentPage,@Param("pageSize") Integer pageSize,@Param("carIds") String carIds);

    /**
     * 统计车辆总数
     * @title selectAllCount
     * @return int
     * @author xin
     * @date 2019/6/17 16:37
     */
    int selectAllCount();


}